#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 2e5+7;
int n;
string s1, s2;
int main() {
  ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
  int tc; cin>>tc;
  while(tc--) {
    // reset();
    cin>>n;
    vector<long long> uni[n];
    int u[n], s[n];
    for(int i=0; i<n; ++i) {
      cin>>u[i];
      u[i]--;
    }
    for(int i=0; i<n; ++i) {
      cin>>s[i];
    }
    for(int i=0; i<n; ++i) {
      uni[u[i]].push_back(s[i]);
    }
    for(int i=0; i<n; ++i) {
      sort(uni[i].begin(), uni[i].end(), greater<int>());
    }
    long long ans[n+1] {0};
    for(int i=0; i<n; ++i) {
      int len = uni[i].size();
      for(int j=1; j<len; ++j) {
        uni[i][j] += uni[i][j-1];
      }
      for(int k=1; k<=len; ++k) {
        int ed = len/k*k;
        if(ed==0)continue;
        ans[k] += (long long)uni[i][ed-1];
      }
    }
    for(int i=1; i<=n; ++i) cout<<ans[i]<<' ';
    cout<<'\n';
    // solve();
  }
}

